#ifndef __I2S_H
#define __I2S_H


/***********************************************************************************************
*函数名 ： i2s_audio_init
*函数功能描述 ： 初始化ESP8266的I2s,此函数只能用到TM8211芯片
*函数参数 ： 无
*函数返回值 ： -1-ESP8266未注册 0-初始化成功
*函数创建日期 ： 2019-3-9
*函数修改日期 ： 
***********************************************************************************************/
extern int i2s_audio_init(void);


/***********************************************************************************************
*函数名 ： i2s_start
*函数功能描述 ： 打开i2s的时钟
*函数参数 ： 无
*函数返回值 ： 无
*函数创建日期 ： 2019-3-9
*函数修改日期 ： 
***********************************************************************************************/
extern void i2s_start(void);



/***********************************************************************************************
*函数名 ： i2s_stop
*函数功能描述 ： 关闭i2s的时钟
*函数参数 ： 无
*函数返回值 ： 无
*函数创建日期 ： 2019-3-9
*函数修改日期 ： 
***********************************************************************************************/
extern void i2s_stop(void);


/***********************************************************************************************
*函数名 ： i2s_set_rate
*函数功能描述 ： 设置i2s的频率
*函数参数 ： rate-频率，目前只支持8K和16K
*函数返回值 ： 无
*函数创建日期 ： 2019-3-9
*函数修改日期 ： 
***********************************************************************************************/
extern void i2s_set_rate(uint32_t rate);

/***********************************************************************************************
*函数名 ： pcm_to_i2s
*函数功能描述 ： PCM数据写入i2总线
*函数参数 ： input_data-PCM数据指针，data_len-PCM的数据长度
*函数返回值 ： 无
*函数创建日期 ： 2019-3-9
*函数修改日期 ： 
***********************************************************************************************/
extern void pcm_to_i2s(uint8_t *input_data,int data_len);




/***********************************************************************************************
*函数名 ： i2s_set_channel
*函数功能描述 ： 设置I2S的声道数据
*函数参数 ： channel-声道数据,1为单通道，2为双声道
*函数返回值 ： 无
*函数创建日期 ： 2019-3-9
*函数修改日期 ： 
***********************************************************************************************/
extern void i2s_set_channel(uint8_t channel);


/***********************************************************************************************
*函数名 ： i2s_gpio_init
*函数功能描述 ： 初始化i2s引脚
*函数参数 ： 无
*函数返回值 ： 无
*函数创建日期 ： 2019-3-10
*函数修改日期 ： 
***********************************************************************************************/
extern void i2s_gpio_init(void);
#endif

